package com.jy.rhin.domain.document.filter;

import com.jy.rhin.sdk.dto.document.DocumentContentDto;
import com.jy.rhin.sdk.dto.document.DocumentSubmissionSetDto;

import java.util.List;

/**
 * @author dhl
 * @date 2022/6/2
 * @Description
 */
public interface DocumentFilter {


    /**
     * 是否校验
     * @param submissionSet
     * @param contentList
     * @return
     */
    boolean shouldFilter(DocumentSubmissionSetDto submissionSet, List<DocumentContentDto> contentList);

    /**
     * 校验内容
     * @param submissionSet
     * @param contentList
     * @return
     */
    void doFilter(DocumentSubmissionSetDto submissionSet, List<DocumentContentDto> contentList);

    /**
     * 过滤器简介信息
     * @return
     */
    DocumentFilterDescEnum filterDesc();

}
